package cn.com.dhcc.app.pub.core.util.settlement.compute.configuation;

import cn.com.dhcc.app.pub.core.consts.DdiProperties;

import java.io.File;
import java.text.SimpleDateFormat;


/**
 * 结算配置
 * 1.一个任务对应多个表
 * 2.一个表中的数据--主键通过Md5加密存储
 * 
 */
public abstract class ComputeConfiguation {
	
	
	/**
	 * 默认的，一张表的数据要分成多少组，默认5组
	 */
	public static final int DEFAULT_GROUP= DdiProperties.APP_SETT_GROUP;

	
	public static final String DEFAULT_ENCODING="UTF-8";
	/**
	 * 临时落地的数据
	 * 一个任务发送到交换平台上---然后发送的数据就会落地到这个目录下。根据 groupid/table.temp  任务id/表名/组1.temp，任务id/表名/组2.temp，
	 * 
	 * 一个任务成功发送到接收适配器---就把这些数据移到最终的目录下面 按照表名移动到对应的最终要结算的任务下面
	 *  一个任务失败发送到接收适配器---就把这些数据删除
	 */
	public static final String ROOT_PATH = DdiProperties.APP_UPLOAD_FILEDATA_PATH+File.separator+"compute";
	public static final File TEMP_Dir=new File(ROOT_PATH+File.separator+"temp");
	
	
	/**
	 * 最终要结算的数据  目录结构  任务id/表名/组1.final  任务id/表名/组2.final        
	 * 
	 */
	public static final File FINAL_DIR=new File(ROOT_PATH+File.separator+"final");
	public static final String DATA_SUFFIX=".cp";
	
	/**
	 * 结算结果目录
	 */
	public static final File COMPUTE_DIR=new File(ROOT_PATH+File.separator+"result");
	public static final String COMPUTE_RESULT_SUFFIX=".r";
	
	/**
	 * 结算结果映射目录
	 */
	public static final File COMPUTE_MAPPING_DIR=new File(ROOT_PATH+File.separator+"mapping");
	public static final String COMPUTE_MAPPING_SUFFIX=".mp";
	
	public static final SimpleDateFormat SDF_FORMAT=new SimpleDateFormat("yyyyMMdd");
}
